The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
Present day keyboard, video and mouse (KVM) appliances and baseboard management controllers (BMCs) allow a user to access remote servers and other devices by passing the keyboard, video and mouse signals between the user's device (typically a laptop, PC, tablet, smartphone, etc.) and the KVM appliance or BMC. For the purpose of discussion, the following examples will make reference only to a KVM appliance, but it will be appreciated that they are equally applicable to communication with a BMC. The keyboard and mouse signals received by the KVM appliance are typically received in some network protocol, for example Ethernet protocol packets, and then converted to a format (e.g., USB) that the remote device can accept.
With the recent development of the HTML5 technology, an HTML5 KVM/virtual media client is now able to run in the Web browser of a user's device when a KVM session is established by the user. Currently HTML5 is supported by several web browsers including Apple Corporation's IOS SAFARI® Web browser, Mozilla's FIREFOX® Web browser, the Google CHROME® Web browsers, the INTERNET EXPLORER® (versions 10 and 11) Web Browser from Microsoft Corp., as well as Microsoft's EDGE®, the OPERA® and OPERA MINI® Web browsers developed by Opera Software. The ability to run the HTML5 KVM/virtual media client in the user's Web browser is a significant advantage because the user typically is highly familiar with using a Web browser. As such, this implementation provides the user with a comfortable, easy to use means for conducting a KVM session with a remote KVM device (e.g., KVM appliance or BMC).
The running of an HTML5 KVM/virtual media client in the user's Web browser does, however, present some significant limitations. For one, the Web browser does not allow the KVM/virtual media client access to the physical disks of the client device on which the Web browser is running (e.g., PC workstation, laptop, computing tablet, smartphone, etc.). This limitation did not exist with a KVM/virtual media client that did not run in the user's Web browser. The technology previously used, such as Java or ActiveX, allowed access to the physical media devices such as disk drives, and thus a disk image was not required to access the data files on the user device. When using a Web browser, however, the Web browser provides a relatively small, temporary storage area termed a “sandbox”. The JavaScript engine that runs in the Web browser can bring files into the sandbox. But the JavaScript engine still is not allowed to write out the files, nor is it allowed direct access to the physical media devices on the user's device, such as disk drives, typically used in virtual media implementations. Furthermore, the temporary sandbox is quite small in size, and is typically limited to about 5 MB of temporary storage. This presents a significant limitation to creating disk images, which often exceed the capacity of the sandbox by a substantial amount. As such, using the temporary sandbox of a typical Web browser is only possible when creating small disk image files.
One Web browser presently used by many individuals is the freeware “CHROME™” Web browser available from Google, Inc. of Mountain View, Calif. The CHROME™ Web browser, like other browsers, provides both a temporary sandbox and a persistent sandbox. The persistent sandbox provides significantly more storage area (uses local system's hard drive disk free space) than the temporary sandbox of most other web browsers. Furthermore, with the CHROME™ Web browser it is possible to write out files directly into the persistent sandbox of the CHROME™ Web browser.
As a result, a new system and method is needed for accessing the data files stored on the user's device or physically connected to the user's device, when using an HTML5 KVM/vMedia client running in the Web browser of the user's device, and without the limitations on storage capacity inherent with most Web browsers.